Paint simulation programs have been developed that simulate artistic oil painting on a computer. Conventional oil paint simulation programs typically provide a virtual paint brush for use by an artist to paint (create a painting) on a digital canvas. These programs attempt to simulate the texture of oil paints, and the manner in which the bristles of the paint brush smear the oil paint across the canvas. Many oil paint simulation programs model oil painting brush strokes by stamping a pre-defined 2D brush imprint along a brush stroke path, and simulate paint transfer between the brush stroke and the canvas using pickup maps. In these simulations, the paint is often represented in 2D. However, a real, physical oil painting does not look like a flat 2D image. The paint in a physical oil painting has depth and texture. As a result, many of the conventional paint simulation programs are unable to realistically model real paint brush strokes used in physical oil paintings.
Realistic representation of surface thickness of oil paints on a canvas is necessary to simulate artistic oil painting on a computer. Such representation refers to the thickness of applied oil paint that extends above the canvas surface in the z-direction (coming out of canvas). Realistically representing the surface thickness of oil paints requires modeling of realistic oil painting brush strokes. As mentioned above, one approach to model oil painting brush strokes is to stamp pre-defined 2D brush imprints and simulate the paint transfer between the brush stroke and the canvas. Unfortunately, modeling oil painting brush strokes in this manner produces low quality representations of the 3D surface details of brush strokes and, accordingly, low quality simulations of an oil painting.
Another approach to model oil painting brush strokes is to simulate many hundreds or even thousands of individual bristles of a paint brush, and the interaction among the bristles to generate accurate brush shape. Although this approach produces higher quality representations of the 3D surface details of brush strokes, this approach unfortunately requires the use of complex fluid simulation. As such, this approach is computationally very expensive (which also increases power consumption) and not feasible for computing devices that lack the necessary computing power, such as mobile computers and mobile devices, to name a few examples.
Other possible approaches include data-driven, texture synthesis approaches to model oil painting brush strokes. These approaches typically involve collecting a corpus of example brush stroke segments, usually from photographs of real brush strokes. Then, for an input painting brush stroke, the example brush stroke segments are identified that closest match the input stroke path shapes, and optimization is performed to seamlessly connect the identified example brush stroke segments. Unfortunately, these approaches often produce repeated patterns or otherwise limited patterns that do not capture the full set of dynamics and variations of a real brush stroke.
In the following detailed description, reference is made to the accompanying drawings, which form a part hereof. In the drawings, similar symbols typically identify similar components, unless context dictates otherwise. The illustrative embodiments described in the detailed description, drawings, and claims are not meant to be limiting. Other embodiments may be used, and other changes may be made, without departing from the spirit or scope of the subject matter presented herein. The aspects of the present disclosure, as generally described herein, and illustrated in the Figures, can be arranged, substituted, combined, separated, and designed in a wide variety of different configurations, all of which are explicitly contemplated herein.